package com.common.www.bean.entity.project;

//import com.bianmaba.realestate.bean.entity.authorization.UserRoleMiddle;

import org.springframework.boot.base.jpa.domain.annotations.QueryCacheable;
import org.springframework.boot.base.jpa.domain.entity.NumberIdentityEntity;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

/**
 * 项目
 *
 * @param
 * @author andyliu
 * @date 5/28/2018 4:23 PM
 * @return
 */
@DynamicUpdate(true)
@DynamicInsert(true)
@Entity
@Getter
@Setter
@QueryCacheable
@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
@Table()
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "project返回参数")
public class Project extends NumberIdentityEntity {
//    @JsonIgnoreProperties(value = {"parent", "children"})
//    @ManyToOne()
//    private Company company;

    /**
     * 项目名称
     */
    @Column(length = 512, nullable = false)
    @ApiModelProperty(value = "名称", example = "1")
    private String name;


    /**
     * 省份
     */
    @Column(nullable = false, length = 32)
    @ApiModelProperty(value = "省份", example = "四川省")
    private String province;
    /**
     * 城市
     */
    @Column(nullable = false, length = 32)
    @ApiModelProperty(value = "市", example = "成都市")
    private String city;

//    /**
//     * 户型数量
//     */
//    @Column(length = 11)
//    private Integer huXingShuLiang;

    /**
     * 型材：断桥铝合金损耗率
     */
    @Column(length = 11)
    private Float dqlvjSunHaoLv;

    /**
     * 型材：普通铝合金损耗率
     */
    @Column(length = 11)
    private Float ptlvjSunHaoLv;

    /**
     * 型材：塑钢铝合金损耗率
     */
    @Column(length = 11)
    private Float sgSunHaoLv;

    /**
     * 型材：忖钢铝合金损耗率
     */
    @Column(length = 11)
    private Float cgSunHaoLv;

    /**
     * 型材：地弹门铝合金损耗率
     */
    @Column(length = 11)
    private Float dtmSunHaoLv;

    /**
     * 型材:折算率
     */
    @Column(length = 11)
    private Float zheSuanLv;

    /**
     * 玻璃：铝合金玻璃耗量(0到1)
     */
    @Column(length = 11)
    private Float lhjHaoLiang;

    /**
     * 玻璃：塑钢门窗玻璃耗量(0到1)
     */
    @Column(length = 11)
    private Float sgHaoLiang;

}